Chapter 6\Employees3.dtd

<![INCLUDE [
	<!ENTITY % employees.body "employee+">
	<!ENTITY % employee.body 
		"name, position, address, phone">
	<!ENTITY % name.body "first, last">
	<!ENTITY % address.body 
		"street?, city?, state?, zip?">
	<!ENTITY % phone.body 
		"main, office*, fax*, mobile*, home*">

	<!ELEMENT employees ( %employees.body; )>
	<!ELEMENT employee ( %employee.body; )>
	<!ELEMENT name ( %name.body; )>
	<!ELEMENT address ( %address.body; )>
	<!ELEMENT phone ( %phone.body; )>
]]>

<![IGNORE [
	<!ELEMENT employees (employee+)>
	<!ELEMENT employee 
		(name, position, address, phone)>
	<!ELEMENT name (first, last)>
	<!ELEMENT address (street?, city?, state?, zip?)>
	<!ELEMENT phone 
		(main, office*, fax*, mobile*, home*)>
]]>

<!ATTLIST employee id ID #REQUIRED>

<!ELEMENT first (#PCDATA)>
<!ELEMENT last  (#PCDATA)>

<!ELEMENT position (#PCDATA)>

<!ELEMENT street (#PCDATA)>
<!ELEMENT city   (#PCDATA)>
<!ELEMENT state  (#PCDATA)>
<!ELEMENT zip    (#PCDATA)>

<!ELEMENT main   (#PCDATA)>
<!ELEMENT office (#PCDATA)>
<!ELEMENT fax    (#PCDATA)>
<!ELEMENT mobile (#PCDATA)>
<!ELEMENT home   (#PCDATA)>